
package com.mu.rai.services;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;


/**
 * <p>Java class for tcpHeader complex type.
 * 
 * <p>The following schema fragment specifies the expected content contained within this class.
 * 
 * <pre>
 * &lt;complexType name="tcpHeader">
 *   &lt;complexContent>
 *     &lt;extension base="{http://services.rai.mu.com}modelObject">
 *       &lt;sequence>
 *         &lt;element name="acknowledgement" type="{http://services.rai.mu.com}tcpAcknowledgement"/>
 *         &lt;element name="dst_port" type="{http://services.rai.mu.com}layer4Port"/>
 *         &lt;element name="flags" type="{http://services.rai.mu.com}tcpFlags"/>
 *         &lt;element name="header_length" type="{http://services.rai.mu.com}lengthType"/>
 *         &lt;element name="sequence" type="{http://services.rai.mu.com}tcpSequence"/>
 *         &lt;element name="src_port" type="{http://services.rai.mu.com}layer4Port"/>
 *         &lt;element name="urgent" type="{http://services.rai.mu.com}tcpUrgentPointer"/>
 *         &lt;element name="window" type="{http://services.rai.mu.com}tcpWindow"/>
 *       &lt;/sequence>
 *     &lt;/extension>
 *   &lt;/complexContent>
 * &lt;/complexType>
 * </pre>
 * 
 * 
 */
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "tcpHeader", propOrder = {
    "acknowledgement",
    "dstPort",
    "flags",
    "headerLength",
    "sequence",
    "srcPort",
    "urgent",
    "window"
})
public class TcpHeader
    extends ModelObject
{

    @XmlElement(required = true)
    protected TcpAcknowledgement acknowledgement;
    @XmlElement(name = "dst_port", required = true)
    protected Layer4Port dstPort;
    @XmlElement(required = true)
    protected TcpFlags flags;
    @XmlElement(name = "header_length", required = true)
    protected LengthType headerLength;
    @XmlElement(required = true)
    protected TcpSequence sequence;
    @XmlElement(name = "src_port", required = true)
    protected Layer4Port srcPort;
    @XmlElement(required = true)
    protected TcpUrgentPointer urgent;
    @XmlElement(required = true)
    protected TcpWindow window;

    /**
     * Gets the value of the acknowledgement property.
     * 
     * @return
     *     possible object is
     *     {@link TcpAcknowledgement }
     *     
     */
    public TcpAcknowledgement getAcknowledgement() {
        return acknowledgement;
    }

    /**
     * Sets the value of the acknowledgement property.
     * 
     * @param value
     *     allowed object is
     *     {@link TcpAcknowledgement }
     *     
     */
    public void setAcknowledgement(TcpAcknowledgement value) {
        this.acknowledgement = value;
    }

    /**
     * Gets the value of the dstPort property.
     * 
     * @return
     *     possible object is
     *     {@link Layer4Port }
     *     
     */
    public Layer4Port getDstPort() {
        return dstPort;
    }

    /**
     * Sets the value of the dstPort property.
     * 
     * @param value
     *     allowed object is
     *     {@link Layer4Port }
     *     
     */
    public void setDstPort(Layer4Port value) {
        this.dstPort = value;
    }

    /**
     * Gets the value of the flags property.
     * 
     * @return
     *     possible object is
     *     {@link TcpFlags }
     *     
     */
    public TcpFlags getFlags() {
        return flags;
    }

    /**
     * Sets the value of the flags property.
     * 
     * @param value
     *     allowed object is
     *     {@link TcpFlags }
     *     
     */
    public void setFlags(TcpFlags value) {
        this.flags = value;
    }

    /**
     * Gets the value of the headerLength property.
     * 
     * @return
     *     possible object is
     *     {@link LengthType }
     *     
     */
    public LengthType getHeaderLength() {
        return headerLength;
    }

    /**
     * Sets the value of the headerLength property.
     * 
     * @param value
     *     allowed object is
     *     {@link LengthType }
     *     
     */
    public void setHeaderLength(LengthType value) {
        this.headerLength = value;
    }

    /**
     * Gets the value of the sequence property.
     * 
     * @return
     *     possible object is
     *     {@link TcpSequence }
     *     
     */
    public TcpSequence getSequence() {
        return sequence;
    }

    /**
     * Sets the value of the sequence property.
     * 
     * @param value
     *     allowed object is
     *     {@link TcpSequence }
     *     
     */
    public void setSequence(TcpSequence value) {
        this.sequence = value;
    }

    /**
     * Gets the value of the srcPort property.
     * 
     * @return
     *     possible object is
     *     {@link Layer4Port }
     *     
     */
    public Layer4Port getSrcPort() {
        return srcPort;
    }

    /**
     * Sets the value of the srcPort property.
     * 
     * @param value
     *     allowed object is
     *     {@link Layer4Port }
     *     
     */
    public void setSrcPort(Layer4Port value) {
        this.srcPort = value;
    }

    /**
     * Gets the value of the urgent property.
     * 
     * @return
     *     possible object is
     *     {@link TcpUrgentPointer }
     *     
     */
    public TcpUrgentPointer getUrgent() {
        return urgent;
    }

    /**
     * Sets the value of the urgent property.
     * 
     * @param value
     *     allowed object is
     *     {@link TcpUrgentPointer }
     *     
     */
    public void setUrgent(TcpUrgentPointer value) {
        this.urgent = value;
    }

    /**
     * Gets the value of the window property.
     * 
     * @return
     *     possible object is
     *     {@link TcpWindow }
     *     
     */
    public TcpWindow getWindow() {
        return window;
    }

    /**
     * Sets the value of the window property.
     * 
     * @param value
     *     allowed object is
     *     {@link TcpWindow }
     *     
     */
    public void setWindow(TcpWindow value) {
        this.window = value;
    }

}
